package com.lingxu.module.database.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.sql.Clob;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 模型
 * </p>
 *
 * @author admin
 * @since 2025-07-31
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("T_MODEL")
@ApiModel(value="TModel对象", description="模型")
public class TModel implements Serializable {
    /**
     * 工作流关联key
     */
    @ApiModelProperty(value = "工作流关联key")
    @TableField("WORKKEY")
    private String workKey;
    /**
     * 未核查数量
     */
    @TableField(exist = false)
    private Long notChack;
    /**
     * 已核查数量
     */
    @TableField(exist = false)
    private Long alreadyChack;

    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "模型类别")
    @TableField(exist = false)
    private String modelType;
    @ApiModelProperty(value = "疑似问题数量")
    @TableField(exist = false)
    private Long issueCount;


    @ApiModelProperty(value = "主键")
    @TableId(value = "ID", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "名称")
    @TableField("NAME")
    private String name;

    @ApiModelProperty(value = "模型一级类别 关联模型分类表的ID")
    @TableField("TOPCATEGORY")
    private String topcategory;

    @ApiModelProperty(value = "模型二级类别 关联模型分类表的ID")
    @TableField("SECONDCATEGORY")
    private String secondcategory;

    @ApiModelProperty(value = "创建人id")
    @TableField("CREATOR")
    private String creator;

    @ApiModelProperty(value = "创建人姓名")
    @TableField("CREATORNAME")
    private String creatorname;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATETIME")
    private String createtime;

    @ApiModelProperty(value = "备注")
    @TableField("REMARK")
    private String remark;

    @ApiModelProperty(value = "模型状态 01-私有模型 02-公开模型  03-分享给指定用户")
    @TableField("STATUS")
    private String status;

    @ApiModelProperty(value = "模型内容，json格式")
    @TableField("CONTENT")
    private Clob content;

    @ApiModelProperty(value = "浏览次数")
    @TableField("BROWSETIMES")
    private String browsetimes;

    @ApiModelProperty(value = "执行计划")
    @TableField("RUNPLAN")
    private String runplan;

    @ApiModelProperty(value = "自定义组件 0-否（默认）  1-是")
    @TableField("CUSTOM")
    private String custom;

    @ApiModelProperty(value = "表个数")
    @TableField("TABLENUM")
    private String tablenum;

    @ApiModelProperty(value = "关联关系数量")
    @TableField("RELATIONNUM")
    private String relationnum;

    @ApiModelProperty(value = "复杂度")
    @TableField("COMPLEXITY")
    private String complexity;

    @ApiModelProperty(value = "数据量")
    @TableField("DATANUM")
    private String datanum;

    @ApiModelProperty(value = "清洗量")
    @TableField("RESULTNUM")
    private String resultnum;

    @ApiModelProperty(value = "使用量")
    @TableField("USENUM")
    private String usenum;

    @ApiModelProperty(value = "标签")
    @TableField("FLAGS")
    private String flags;

    @ApiModelProperty(value = "模型集市发布申请时间")
    @TableField("APPLYTIME")
    private String applytime;

    @ApiModelProperty(value = "模型集市发布申请事由")
    @TableField("APPLYREASON")
    private String applyreason;

    @ApiModelProperty(value = "模型集市审批状态 0审批中 1审批通过 2审批不通过")
    @TableField("APPROVESTATE")
    private String approvestate;

    @ApiModelProperty(value = "模型集市是否分享数据 0不分享 1分享")
    @TableField("ISSHAREDATA")
    private String issharedata;

    @ApiModelProperty(value = "模型集市审批时间")
    @TableField("APPROVETIME")
    private String approvetime;

    @ApiModelProperty(value = "模型集市审批意见")
    @TableField("APPROVEOPINION")
    private String approveopinion;

    @ApiModelProperty(value = "审批人姓名")
    @TableField("APPROVEUSER")
    private String approveuser;

    @ApiModelProperty(value = "审批人ID")
    @TableField("APPROVEUSERID")
    private String approveuserid;

    @ApiModelProperty(value = "模型报告编号")
    @TableField("REPORTNO")
    private String reportno;

    @ApiModelProperty(value = "研判目的")
    @TableField("YPMD")
    private String ypmd;

    @ApiModelProperty(value = "关联模型id")
    @TableField("LINKMODELID")
    private String linkmodelid;

    @ApiModelProperty(value = "主模型id")
    @TableField("MASTERMODELID")
    private String mastermodelid;

    @ApiModelProperty(value = "主模型名称")
    @TableField("MASTERMODELNAME")
    private String mastermodelname;

    @ApiModelProperty(value = "主模型描述")
    @TableField("MASTERMODELREMARK")
    private String mastermodelremark;

    @ApiModelProperty(value = "算子数")
    @TableField("OPERATOR")
    private Integer operator;

    @ApiModelProperty(value = "模型分数")
    @TableField("SCORE")
    private BigDecimal score;

    @ApiModelProperty(value = "是否删除 1删除 其他为未删除")
    @TableField("ISDELETE")
    private String isdelete;

    @ApiModelProperty(value = "是否已推送 1已推送 其他为未推送或推送后修改")
    @TableField("ISPUSH")
    private String ispush;

    @ApiModelProperty(value = "监督模型自增序列")
    @TableField("JDMXSEQ")
    private String jdmxseq;

    @ApiModelProperty(value = "监督模型编码")
    @TableField("JDMXBM")
    private String jdmxbm;

    @ApiModelProperty(value = "高频问题标签")
    @TableField("HIGHPROLABELS")
    private String highprolabels;

    @ApiModelProperty(value = "修改时间")
    @TableField("UPDATETIME")
    private String updatetime;

    @ApiModelProperty(value = "推送时间")
    @TableField("PUSHTIME")
    private String pushtime;

    @ApiModelProperty(value = "高频问题标签详情")
    @TableField("HIGHPROLABELSINFO")
    private String highprolabelsinfo;

    @ApiModelProperty(value = "预警类型")
    @TableField("EARLYWARNTYPE")
    private String earlywarntype;

    @ApiModelProperty(value = "建模根据")
    @TableField("MODELBASE")
    private String modelbase;

    @ApiModelProperty(value = "协同数据绑定id")
    @TableField("COLLABORATIVEID")
    private String collaborativeid;

    @ApiModelProperty(value = "集中整治专项")
    @TableField("JZZZZX")
    private String jzzzzx;

    @ApiModelProperty(value = "审批状态 1 正常  2转办中 3已完成")
    @TableField("APPRO")
    private Integer appro;


}
